/**
 * sign up function
 */
$(function() {
		// 给注册按钮绑定单击事件
		$("#signup-btn").click(function() {
			// 获取用户输入的用户名
			// val(xx)方法：获取或设置input标签中的value值
			var username = $("#username").val();
			// 设置用户名是否为空的正则表达式
			var userReg = /^[a-zA-Z0-9_-]{3,16}$/;
			// 判断是否符合规则
			if (!userReg.test(username)) {
				$("#message").text("请输入3-16位用户名（字母、数字、下划线或减号）！");
				return false;
			}

			// 获取密码
			var password = $("#password").val();
			var passwdReg = /^[a-zA-Z0-9_-]{6,18}$/;
			if (!passwdReg.test(password)) {
				$("#message2").text("请输入6-18位密码（字母、数字、下划线或减号）！");
				return false;
			}
			// 获取确认密码
			var password2 = $("#password2").val();
			if (password2 != password) {
				$("#password").val("");
				$("#password2").val("");
				$("#message3").text("请输入相同的密码！");
				return false;
			}
			// 获取邮箱
			var email = $("#email").val();
			var emailReg = /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/;
			if (!emailReg.test(email)) {
				$("#email").val("");
				$("#message4").text("邮箱格式不正确！");
				return false;
			}
		});

		// 绑定change事件
		$("#username").change(function() {
			// 获取用户名
			var username = $(this).val();
			// 设置用户名是否为空的正则表达式
			var userReg = /^[a-zA-Z0-9_-]{3,16}$/;
			// 判断是否符合规则
			if (!userReg.test(username)) {
				$("#message").text("请输入3-16位用户名（字母、数字、下划线或减号）！");
			} else {
				// 发送Ajax请求
				// 设置请求地址
				var url = "checkUsernameServlet";
				// 设置请求参数
				var params = "username=" + username;
				// 发送请求
				$.post(url, params, function(checkResult) {
					$("#message").html(checkResult);
				}, "text");
			}
		});

		$("#password").change(function() {
			// 获取密码
			var password = $("#password").val();
			var passwdReg = /^[a-zA-Z0-9_-]{6,18}$/;
			if (!passwdReg.test(password)) {
				$("#message2").text("请输入6-18位密码（字母、数字、下划线或减号）！");
				return false;
			} else {
				$("#message2").text("");
				var password2 = $("#password2").val();
				if (password != password2) {
					$("#message3").text("请输入相同的密码！");
					return false;
				} else {
					$("#message3").text("");
				}
			}
		});
		
		$("#password2").change(function() {
			var password = $("#password").val();
			var passwdReg = /^[a-zA-Z0-9_-]{6,18}$/;
			if (!passwdReg.test(password)) {
				$("#message2").text("请输入6-18位密码（字母、数字、下划线或减号）！");
				return false;
			}
			
			var password2 = $("#password2").val();
			if (password != password2) {
				$("#message3").text("请输入相同的密码！");
				return false;
			} else {
				$("#message3").text("");
			}
		});

		$("#email").change(function() {
			// 获取邮箱
			var email = $("#email").val();
			var emailReg = /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/;
			if (!emailReg.test(email)) {
				$("#email").val("");
				$("#message4").text("邮箱格式不正确！");
			} else {
				$("#message4").text("");
			}
			
			var url = "CheckEmail";
			var params = "email=" + email;
			$.post(url, params, function(checkResult) {
				$("#message4").html(checkResult);
			}, "text");
		});
		
		$("#send").click(function() {
			var email = $("#email").val();
			var emailReg = /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/;
			if (!emailReg.test(email)) {
				$("#email").val("");
				$("#message4").text("邮箱格式不正确！");
				return false;
			}
			
			var url = "CheckEmail";
			var params = "email=" + email;
			$.post(url, params, function(checkResult) {
				if(checkResult.indexOf("已被注册") > 0) {
					$("#message4").html(checkResult);
					return false;
				}else{
					url = "SendEmail";
					params = "email=" + email;
					$.post(url, params, function(checkResult2) {
						$("#message4").html(checkResult2);
					}, "text");
				}
			}, "text");
		});
	});